1. Technical Field
The present invention relates generally to computer based time keeping and expense tracking systems, and more particularly to such a system that may be customized on an entity, group, project, user or other basis.
2. Related Art
The tracking of workers"" time has been required since workers began working on an hourly basis. An early example of hourly time tracking was the punch clock system in which a time card was assigned to each worker. Upon commencing work, the worker had his or her card punched by a clock so that the work starting time could be recorded. Then, upon ceasing work, the worker had his or her card punched again so that the work ending time could be recorded. From these starting the work ending time could be recorded. From these starting and stopping times, a record could be constructed for a larger time period, e.g., a weekly period, a bi-weekly period, etc. This record was then used in preparing a paycheck for the worker and in creating other records relating to the time worked by a partial or complete work force.
While the punch clock system worked admirably in a factory environment in which all workers worked in a single location, time keeping was more difficult where a workforce was distributed. For example, employment agencies specialize in placing workers in contract positions within different organizations that also have their own employees. A contract employee, while being paid by an employment agency, reports to an employee (usually a supervisor) within the company. The contract employee creates a time sheet based upon the work he or she performs and then passes the time sheet to his or her supervisor at the company for approval. When the supervisor approves the time sheet, the supervisor passes the time sheet to the employment agency. The employment agency then receives the time sheet and typically inputs the time sheet into a computer that produces a paycheck for the employee and bills the company for the employee""s time. This process is slow, tedious, prone to errors and expensive. The cost of the overhead associated with this process may easily exceed twenty percent of the revenue that the employment agency receives for the employee.
Another difficulty relating to time keeping relates to distributed work forces. Distributed work forces are now the norm, instead of the exception, not only for employment agencies but for companies as well. In a distributed work force, employees/contractors may be distributed worldwide. Each employee/contractor is, required to submit time sheets for each pay period. These time sheets are received at a central accounting office, the time entries contained thereupon are then input into a computer system, paychecks are produced, reports are produced, and invoices are produced when required. While faxing or emailing time records to the central accounting office may expedite these operations, substantial effort must be expended in the process.
Organization of time records is another difficulty faced in time keeping. While all employees may work for a single company, the employees may work for different divisions, in different departments, and for different supervisors within the same department. Time records must be segregated according to this organizational structure for accounting and budget tracking purposes. Further, in an employment agency scenario, the employment agency may service tens or hundreds of companies. While each of the contractors work for, and is paid by the employment agency, invoices must be submitted to the appropriate company. Further, within a particular company, a single contractor may work on more than one project, in more than one division, and for more than one supervisor. The contractor""s time must be segregated accordingly when the invoice is submitted. To further complicate this effort, the contractor may be paid at different rates for this work, depending upon the project, division, etc. These complexities further increase the difficulty in not only paying the employee but in generating an invoice for the company.
Expense tracking includes its own difficulties, some of which are shared with time tracking. Expense reports must be prepared on a periodic basis for each member of a workforce, whether he or she is an employee or contractor. These expense reports must be received by an accounting department, allocated to the proper account, and reimbursement checks must be prepared. With a distributed workforce, at least those difficulties described above apply. Proper accounting of expenses and invoicing when required also introduces difficulties to the process. As may be seen, current systems do not readily facilitate time and expense entry and monitoring for modern workforces that have employees that are continuously going from site to site.
Thus, there is a need in the art for a timekeeping and expense tracking system that overcomes the shortcomings cited above as well as other shortcomings of the prior systems.
Thus, to overcome the shortcomings of the prior systems, among other shortcomings, a timekeeping and expense tracking (xe2x80x9cTKETxe2x80x9d) system constructed according to the present invention provides a plurality of users with the ability to access the system via the internet and via wireless communication networks. The TKET system resides upon at least one server computer coupled to the internet and supports access from computer systems, web enabled telephones, personal data terminals, and other enabled devices including wireless personal digital assistants (PDAs). The TKET system may therefore be accessed from both wired and wireless devices. In one embodiment, users employ browser software to access the TKET system and require no specialized client software.
In order to support the many and varied needs of companies using the TKET system, the TKET system supports configurable graphical user interface screens (xe2x80x9cGUI screenxe2x80x9d). GUI screens are those displays provided to users of the TKET system when the users access the TKET system. Via the GUI screen, the users input their time and expense records. The GUI screen are configurable to alter the objects presented, the layout of the objects and information presented, the color schemes presented, the timekeeping or expense tracking information required from the user, and in other ways that cause the TKET system to be more effective.
GUI screens may be customized on a company-by-company basis, a department-by-department basis, a group-by-group basis, a project-by-project basis, and a user-by-user basis or upon another basis. A single TKET system may be used to service the time keeping and expense tracking needs of a plurality of companies, each of which has a plurality of divisions, a plurality of departments, a plurality of groups and a plurality of employees/contractors. Thus, the configurability of the TKET system allows differing GUI screen presentations to be created and presented such that each group of users is employing a different system.
GUI screen preferences for sets of users of the TKET system may be organized in a hierarchical basis to simplify the GUI screen creation and presentation operations. In a GUI screen preference hierarchy, a top level of the hierarchy possesses a respective set of GUI screen preferences that are sufficient to create a user""s GUI screen. Each lower level on the hierarchy also possesses a respective set of GUI screen preferences. Each user serviced by the TKET system resides at a particular location on the hierarchy. With this hierarchy position determined, a GUI screen may be created for the user. In creating the GUI screen, the user""s location in the hierarchy determines his ability level for making changes because he inherits the GUI screen preferences of all other higher level users in the hierarchy. However, GUI screen preferences of successively lower levels of the hierarchy displace conflicting GUI screen preferences of higher levels of the hierarchy. Thus, a GUI screen for a particular user of the TKET system will have his or her GUI screen preferences determined along a top to bottom hierarchy path.
The TKET system also generates GUI screens depending upon the type of terminal from which a user accesses the TKET system and the connection over which the user accesses the TKET system. A GUI screen created for the user when the user accesses the TKET system from a palm-top computer is simpler than a GUI screen created for the user when the user accesses the TKET system from a desktop computer. Further, when the user accesses the TKET system from a wireless device, the bandwidth of the available data path from the TKET system to the user""s terminal will also be considered. A less complex GUI screen will be created and provided to the user when lesser bandwidth is available over which to transmit the GUI screen to the user. This operating feature is particularly important when the user accesses the TKET system from a wireless device.